Design Patterns with AspectJ, Generics, and Reflective Programming
نویسنده
چکیده
Over the past decade, there has been a lot of interest towards aspect-oriented programming (AOP). Hannemann and Kiczales developed AspectJ implementations of the Gang-of-Four (GoF) design patterns. Their study was continued by Hachani, Bardou, Borella, and others. However, no one has tried to improve the implementations by using generics or reflective programming. This research faces up to this issue. As a result, highly reusable implementations of Decorator, Proxy, and Prototype are presented.
منابع مشابه
A pattern system for aspect-oriented design
Aspect orientation can be used to evolve and improve objectoriented design patterns. However, the newly proposed patterns are generally specific to a particular aspect-oriented programming language (such as AspectJ, Hyper/J, etc). In order to mitigate this limit, we proposed a general aspect-oriented design modeling language that we used to express the aspect-oriented structures of all the GoF ...
متن کاملA Multiparadigm Study of Crosscutting Modularity in Design Patterns
Design patterns provide solutions to recurring design problems in object-oriented programming. Design patterns typically crosscut class boundaries so previous work aimed at improving modularity of their implementations. A series of recent studies has focused on aspect-oriented programming while other crosscutting techniques such as collaborationbased designs have remained unexplored. In this pa...
متن کاملUsing Aspect-Oriented Programming for Design Patterns Implementation
Object-oriented design patterns are useful for designing software programs or components, which are based on objects. Object-orientation has however some limitations that a more recent approach known as aspectorientation, or more generally as "advanced separation of concerns" try to eliminate. This paper presents and motivates the beginning of some work aiming to identify and gain from the bene...
متن کاملMapping Composition Patterns to AspectJ and Hyper/J
In earlier work, we demonstrated the successful separation of the designs of crosscutting concerns into composition patterns [1]. In this paper, we demonstrate the mapping of crosscutting designs to two programming models that support similar approaches to separation within code—AspectJ [7] and Hyper/J [5]. We first illustrate the design of the Observer pattern using the composition pattern app...
متن کاملUnderstanding Design Patterns Density with Aspects: A Case Study in JHotDraw using AspectJ
Design patterns offer solutions to common engineering problems in programs [1]. In particular, they shape the evolution of program elements. However, their implementations tend to vanish in the code: thus it is hard to spot them and to understand their impact. The problem becomes even more difficult with a “high density of pattern”: then the program becomes easy to evolve in the direction allow...
متن کامل